/*
 * idxCMS Flat Files Content Management System v4.1
 * Modal windows
 */
if(!window.dhtmlx)window.dhtmlx={};
(function(){var _dhx_msg_cfg=null;function callback(config,result){var usercall=config.callback;modality(false);config.box.parentNode.removeChild(config.box);_dhx_msg_cfg=config.box=null;if(usercall)usercall(result);}
function modal_key(e){if(_dhx_msg_cfg){e=e||event;var code=e.which||event.keyCode;if(dhtmlx.message.keyboard){if(code==13||code==32)callback(_dhx_msg_cfg,true);if(code==27)callback(_dhx_msg_cfg,false);}if(e.preventDefault)e.preventDefault();return !(e.cancelBubble=true);}}
if(document.attachEvent)document.attachEvent("onkeydown",modal_key);
else document.addEventListener("keydown",modal_key,true);
function modality(mode){if(!modality.cover){modality.cover=document.createElement("DIV");modality.cover.onkeydown=modal_key;modality.cover.className="dhx_modal_cover";document.body.appendChild(modality.cover);}var height=document.body.scrollHeight;modality.cover.style.display=mode?"inline-block":"none";}
function button(text,result){return "<div class='dhtmlx_popup_button' result='"+result+"' ><div>"+text+"</div></div>";}
function info(text){if(!t.area){t.area=document.createElement("DIV");t.area.className="dhtmlx_message_area";t.area.style[t.position]="5px";document.body.appendChild(t.area);}t.hide(text.id);var message=document.createElement("DIV");message.innerHTML="<div>"+text.text+"</div>";message.className="dhtmlx-info dhtmlx-"+text.type;message.onclick=function(){t.hide(text.id);text=null;};if(t.position=="bottom" && t.area.firstChild)t.area.insertBefore(message,t.area.firstChild);else t.area.appendChild(message);if(text.expire>0)t.timers[text.id]=window.setTimeout(function(){t.hide(text.id);},text.expire);t.pull[text.id]=message;message=null;return text.id;}
function _boxStructure(config,ok,cancel){var box=document.createElement("DIV");box.className=" dhtmlx_modal_box dhtmlx-"+config.type;box.setAttribute("dhxbox",1);var inner='';if(config.width)  box.style.width=config.width;if(config.height) box.style.height=config.height;if(config.title)inner+='<div class="dhtmlx_popup_title">'+config.title+'</div>';inner+='<div class="dhtmlx_popup_text"><span>'+(config.content?'':config.text)+'</span></div><div class="dhtmlx_popup_controls">';if(ok)inner+=button(config.ok||"OK",true);if(cancel)inner+=button(config.cancel||"Cancel",false);if(config.buttons){for (var i=0;i<config.buttons.length;i++)inner+=button(config.buttons[i],i);}inner+='</div>';box.innerHTML=inner;if(config.content){var node=config.content;if(typeof node=="string")node=document.getElementById(node);if(node.style.display=='none')node.style.display="";box.childNodes[config.title?1:0].appendChild(node);}box.onclick=function(e){e=e||event;var source=e.target||e.srcElement;if(!source.className) source=source.parentNode;if(source.className=="dhtmlx_popup_button"){var result=source.getAttribute("result");result=(result=="true")||(result=="false"?false:result);callback(config,result);}};config.box=box;if(ok||cancel)_dhx_msg_cfg=config;return box;}
function _createBox(config,ok,cancel){var box=config.tagName?config:_boxStructure(config,ok,cancel);if(!config.hidden)modality(true);document.body.appendChild(box);var x=config.left||Math.abs(Math.floor(((window.innerWidth||document.documentElement.offsetWidth)-box.offsetWidth)/2));var y=config.top||Math.abs(Math.floor(((window.innerHeight||document.documentElement.offsetHeight)-box.offsetHeight)/2));if(config.position=="top")box.style.top="-3px";else box.style.top=y+'px';box.style.left=x+'px';box.onkeydown=modal_key;box.focus();if(config.hidden) dhtmlx.modalbox.hide(box);return box;}function alertPopup(config){return _createBox(config,true,false);}function confirmPopup(config){return _createBox(config,true,true);}
function boxPopup(config){return _createBox(config);}
function box_params(text,type,callback){if(typeof text!="object"){if(typeof type=="function"){callback=type;type="";}text={text:text,type:type,callback:callback };}return text;}
function params(text,type,expire,id){if(typeof text!="object")text={text:text,type:type,expire:expire,id:id};text.id=text.id||t.uid();text.expire=text.expire||t.expire;return text;}
dhtmlx.alert=function(){var text=box_params.apply(this,arguments);text.type=text.type||"confirm";return alertPopup(text);};
dhtmlx.confirm=function(){var text=box_params.apply(this,arguments);text.type=text.type||"alert";return confirmPopup(text);};
dhtmlx.modalbox=function(){var text=box_params.apply(this,arguments);text.type=text.type||"alert";return boxPopup(text);};
dhtmlx.modalbox.hide=function(node){while (node && node.getAttribute && !node.getAttribute("dhxbox"))node=node.parentNode;if(node){node.parentNode.removeChild(node);modality(false);}};
var t=dhtmlx.message=function(text,type,expire,id){text=params.apply(this,arguments);text.type=text.type||"info";var subtype=text.type.split("-")[0];switch (subtype){case "alert":return alertPopup(text);case "confirm":return confirmPopup(text);case "modalbox":return boxPopup(text);default:return info(text);break;}};t.seed=(new Date()).valueOf();t.uid=function(){return t.seed++;};t.expire=4000;t.keyboard=true;t.position="top";t.pull={};t.timers={};t.hideAll=function(){for(var key in t.pull)t.hide(key);};t.hide=function(id){var obj=t.pull[id];if(obj && obj.parentNode){window.setTimeout(function(){obj.parentNode.removeChild(obj);obj=null;},2000);obj.className+=" hidden";if(t.timers[id])window.clearTimeout(t.timers[id]);delete t.pull[id];}};})();